String and module switching control systems and methods for mode transitions

ABSTRACT

A battery system includes: at least two battery modules, each including at least three strings of battery cells that are configured to, at different times be: connected in series and to a first positive terminal via first switches; connected in parallel and to a second positive terminal via second switches; and disconnected from both of the first and second positive terminals; and a switch control module configured to: during operation in a first power mode: determine periods of phases, respectively; and determine periods for the strings, respectively, to be connected to the second positive terminal during the phases; during operation in a second power mode: set the periods of the phases, respectively, to be equal in length; and set the periods for the strings, respectively, to be equal in length; and selectively actuate the switches based on the periods of the phases and the periods for the strings.

INTRODUCTION

The information provided in this section is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.

The present disclosure relates to vehicles and more particularly to battery systems of vehicles.

Some types of vehicles include only an internal combustion engine that generates propulsion torque. Hybrid vehicles include both an internal combustion engine and one or more electric motors. Some types of hybrid vehicles utilize the electric motor and the internal combustion engine in an effort to achieve greater fuel efficiency than if only the internal combustion engine was used. Some types of hybrid vehicles utilize the electric motor and the internal combustion engine to achieve greater torque output than the internal combustion could achieve by itself.

Some example types of hybrid vehicles include parallel hybrid vehicles, series hybrid vehicles, and other types of hybrid vehicles. In a parallel hybrid vehicle, the electric motor works in parallel with the engine to combine power and range advantages of the engine with efficiency and regenerative braking advantages of electric motors. In a series hybrid vehicle, the engine drives a generator to produce electricity for the electric motor, and the electric motor drives a transmission. This allows the electric motor to assume some of the power responsibilities of the engine, which may permit the use of a smaller and possibly more efficient engine. The present application is applicable to electric vehicles, hybrid vehicles, and other types of vehicles.

SUMMARY

In a feature, a battery system includes: a first positive terminal, a second positive terminal, and a negative terminal; switches; at least two battery modules, wherein each of the at least two battery modules includes at least three strings of battery cells that are configured to, at different times be: connected in series and to the first positive terminal via first ones of the switches; connected in parallel and to the second positive terminal via second ones of the switches; and disconnected from both of the first and second positive terminals; and a switch control module configured to: during operation in a first power mode: determine, using model predictive control based on SOCs of the strings, periods of phases, respectively; and determine, using model predictive control based on the SOCs, periods for the strings, respectively, to be connected to the second positive terminal and the negative terminal during the phases; during operation in a second power mode: set the periods of the phases, respectively, to be equal in length; and set the periods for the strings, respectively, to be equal in length; and selectively actuate the switches based on the periods of the phases and the periods for the strings of battery cells.

In further features, the switch control module is configured to, during operation in the first power mode, using model predictive control, set a first period of a first one of the phases to one of (a) greater than and (b) less than a second period of a second one of the phases.

In further features, the switch control module is configured to, during operation in the first power mode, using model predictive control, set a third period of a third one of the phases to: one of (a) greater than and (b) less than the second period of the second one of the phases; and one of (a) greater than and (b) less than the first period of the first one of the phases.

In further features, the switch control module is configured to, during operation in the first power mode, using model predictive control, set first, second, and third periods of first, second, and third ones of the phases to values that are different from each other.

In further features, the switch control module is configured to, during operation in the first power mode, determine the periods of the phases and the periods for the strings based on minimizing an error between the SOCs of the strings of battery cells.

In further features, the error is a squared error between the SOCs of the strings of battery cells.

In further features, the switch control module is configured to set the power mode to one of the first power mode and the second power mode based on at least one of (a) a first power demand via the first positive terminal and (b) a second power demand via the second positive terminal.

In further features, the switch control module is configured to operate in the second power mode when use of model predictive control is not available.

In further features, the switch control module is configured to determine whether use of model predictive control is available based on an amount of computational resources available.

In further features, a number of power modes where model predictive control is available increases as the amount of computational resources available increases.

In further features, the switch control module is configured to cycle through the phases in a predetermined order.

In further features, each of the strings of battery cells includes multiple battery cells connected in series.

In further features, the multiple battery cells include four three volt battery cells.

In further features, the switch control module is configured to control the switches such that one of the strings of battery cells is not at the same time connected to both the first positive terminal and the second positive terminal.

In further features: the first positive terminal is configured to output a first reference potential; the second positive terminal is configured to output a second reference potential; and the first reference potential is greater than the second reference potential.

In a feature, a method includes: at different times, selectively connecting strings of battery cells of at least two battery modules: in series and to a first positive terminal via first ones of switches; in parallel and to a second positive terminal via second ones of the switches; and disconnected from both of the first and second positive terminals, where each of the at least two battery modules includes three strings of battery cells; during operation in a first power mode: determining, using model predictive control based on SOCs of the strings, periods of phases, respectively; and determining, using model predictive control based on the SOCs, periods for the strings, respectively, to be connected to the second positive terminal and a negative terminal during the phases; during operation in a second power mode: setting the periods of the phases, respectively, to be equal in length; and setting the periods for the strings, respectively, to be equal in length; and selectively actuating the switches based on the periods of the phases and the periods for the strings of battery cells.

In further features, determining the periods of the phases and the periods for the strings includes, during operation in the first power mode, using model predictive control, setting a first period of a first one of the phases to one of (a) greater than and (b) less than a second period of a second one of the phases.

In further features, determining the periods of the phases and the periods for the strings includes, during operation in the first power mode, during model predictive control, setting a third period of a third one of the phases to: one of (a) greater than and (b) less than the second period of the second one of the phases; and one of (a) greater than and (b) less than the first period of the first one of the phases.

In further features, determining the periods of the phases and the periods for the strings includes, during operation in the first power mode, using model predictive control, setting first, second, and third periods of first, second, and third ones of the phases to values that are different from each other.

In further features, determining the periods of the phases and the periods for the strings includes, during operation in the first power mode, using model predictive control, determining the periods of the phases and the periods for the strings based on minimizing an error between the SOCs of the strings of battery cells.

Further areas of applicability of the present disclosure will become apparent from the detailed description, the claims and the drawings. The detailed description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will become more fully understood from the detailed description and the accompanying drawings, wherein:

FIG. 1 is a functional block diagram of an example engine control system;

FIG. 2 is a functional block diagram an example battery system of a vehicle;

FIGS. 3A-3B are a schematic including an example implementation of a battery system;

FIG. 4 is a functional block diagram of an example implementation of one battery module in an open (X) configuration;

FIG. 5 includes an example illustration of the battery module in a series (S) configuration;

FIG. 6 includes an example illustration of the battery module in a parallel (P) configuration;

FIG. 7 is a functional block diagram of an example switch control module

FIG. 8 includes an example time series for operation in a power mode during charging;

FIG. 9 is a flowchart depicting an example method of balancing the SOCs of the battery strings and battery modules of a battery;

FIG. 10 includes an example graph of present power mode, predicted power mode, and default control operation over the prediction horizon; and

FIG. 11 includes an example graph of modes and phases over the prediction horizon.

In the drawings, reference numbers may be reused to identify similar and/or identical elements.

DETAILED DESCRIPTION

A battery has a first terminal on a housing of the battery for outputting a first operating voltage (e.g., 48 V) and a second output terminal on the housing for outputting a second operating voltage (e.g., 12 V). The battery may be a battery of a vehicle in an example. The battery includes a plurality of battery modules and a plurality of switches. Each battery module includes a plurality of battery strings, and each battery string includes a plurality of battery cells. The switches are configured to connect strings together in series or individually to a terminal. The strings can also be disconnected from the first and second output terminals.

A model predictive control (MPC) module or another type of balancing control module uses estimates or measurements of SOCs of the battery strings and controls the switches to minimize SOC error across the battery strings and battery modules during operation in some power modes. This ensures that each battery string is charged and discharged as evenly as possible and maximizes battery life. In other power modes, default control is used where phase and string periods are kept equal and balancing is not performed.

The power mode, however, may change during a prediction horizon of the MPC. Computational resources may be insufficient to transition from one power mode into another power mode while using MPC to balance SOCs. Default control of the switching may be used when a transition from one power mode to another power mode occurs during the prediction horizon of the MPC. Default control may involve setting phases of module mode operation to be equal length and periods of connections of the battery strings to be equal length.

Referring now to FIG. 1 , a functional block diagram of an example powertrain system 100 is presented for a hybrid vehicle. While the example of a hybrid vehicle is provided, the present application is applicable to non-vehicle applications and other types of vehicles (e.g., electric, internal combustion engine, etc.). The powertrain system 100 of a vehicle includes an engine 102 that combusts an air/fuel mixture to produce torque. The vehicle may be non-autonomous or autonomous.

Air is drawn into the engine 102 through an intake system 108. The intake system 108 may include an intake manifold 110 and a throttle valve 112. For example only, the throttle valve 112 may include a butterfly valve having a rotatable blade. An engine control module (ECM) 114 controls a throttle actuator module 116, and the throttle actuator module 116 regulates opening of the throttle valve 112 to control airflow into the intake manifold 110.

Air from the intake manifold 110 is drawn into cylinders of the engine 102. While the engine 102 includes multiple cylinders, for illustration purposes a single representative cylinder 118 is shown. For example only, the engine 102 may include 2, 3, 4, 5, 6, 8, 10, and/or 12 cylinders. The ECM 114 may instruct a cylinder actuator module 120 to selectively deactivate some of the cylinders under some circumstances, which may improve fuel efficiency.

The engine 102 may operate using a four-stroke cycle or another suitable engine cycle. The four strokes of a four-stroke cycle, described below, will be referred to as the intake stroke, the compression stroke, the combustion stroke, and the exhaust stroke. During each revolution of a crankshaft (not shown), two of the four strokes occur within the cylinder 118. Therefore, two crankshaft revolutions are necessary for the cylinder 118 to experience all four of the strokes. For four-stroke engines, one engine cycle may correspond to two crankshaft revolutions.

When the cylinder 118 is activated, air from the intake manifold 110 is drawn into the cylinder 118 through an intake valve 122 during the intake stroke. The ECM 114 controls a fuel actuator module 124, which regulates fuel injection to achieve a desired air/fuel ratio. Fuel may be injected into the intake manifold 110 at a central location or at multiple locations, such as near the intake valve 122 of each of the cylinders. In various implementations (not shown), fuel may be injected directly into the cylinders or into mixing chambers/ports associated with the cylinders. The fuel actuator module 124 may halt injection of fuel to cylinders that are deactivated.

The injected fuel mixes with air and creates an air/fuel mixture in the cylinder 118. During the compression stroke, a piston (not shown) within the cylinder 118 compresses the air/fuel mixture. The engine 102 may be a compression-ignition engine, in which case compression causes ignition of the air/fuel mixture. Alternatively, the engine 102 may be a spark-ignition engine, in which case a spark actuator module 126 energizes a spark plug 128 in the cylinder 118 based on a signal from the ECM 114, which ignites the air/fuel mixture. Some types of engines, such as homogenous charge compression ignition (HCCI) engines may perform both compression ignition and spark ignition. The timing of the spark may be specified relative to the time when the piston is at its topmost position, which will be referred to as top dead center (TDC).

The spark actuator module 126 may be controlled by a timing signal specifying how far before or after TDC to generate the spark. Because piston position is directly related to crankshaft rotation, operation of the spark actuator module 126 may be synchronized with the position of the crankshaft. The spark actuator module 126 may disable provision of spark to deactivated cylinders or provide spark to deactivated cylinders.

During the combustion stroke, the combustion of the air/fuel mixture drives the piston down, thereby driving the crankshaft. The combustion stroke may be defined as the time between the piston reaching TDC and the time when the piston returns to a bottom most position, which will be referred to as bottom dead center (BDC).

During the exhaust stroke, the piston begins moving up from BDC and expels the byproducts of combustion through an exhaust valve 130. The byproducts of combustion are exhausted from the vehicle via an exhaust system 134.

The intake valve 122 may be controlled by an intake camshaft 140, while the exhaust valve 130 may be controlled by an exhaust camshaft 142. In various implementations, multiple intake camshafts (including the intake camshaft 140) may control multiple intake valves (including the intake valve 122) for the cylinder 118 and/or may control the intake valves (including the intake valve 122) of multiple banks of cylinders (including the cylinder 118). Similarly, multiple exhaust camshafts (including the exhaust camshaft 142) may control multiple exhaust valves for the cylinder 118 and/or may control exhaust valves (including the exhaust valve 130) for multiple banks of cylinders (including the cylinder 118). While camshaft-based valve actuation is shown and has been discussed, camless valve actuators may be implemented. While separate intake and exhaust camshafts are shown, one camshaft having lobes for both the intake and exhaust valves may be used.

The cylinder actuator module 120 may deactivate the cylinder 118 by disabling opening of the intake valve 122 and/or the exhaust valve 130. The time when the intake valve 122 is opened may be varied with respect to piston TDC by an intake cam phaser 148. The time when the exhaust valve 130 is opened may be varied with respect to piston TDC by an exhaust cam phaser 150. A phaser actuator module 158 may control the intake cam phaser 148 and the exhaust cam phaser 150 based on signals from the ECM 114. In various implementations, cam phasing may be omitted. Variable valve lift (not shown) may also be controlled by the phaser actuator module 158. In various other implementations, the intake valve 122 and/or the exhaust valve 130 may be controlled by actuators other than a camshaft, such as electromechanical actuators, electrohydraulic actuators, electromagnetic actuators, etc.

The engine 102 may include zero, one, or more than one boost device that provides pressurized air to the intake manifold 110. For example, FIG. 1 shows a turbocharger including a turbocharger turbine 160-1 that is driven by exhaust gases flowing through the exhaust system 134. A supercharger is another type of boost device.

The turbocharger also includes a turbocharger compressor 160-2 that is driven by the turbocharger turbine 160-1 and that compresses air leading into the throttle valve 112. A wastegate (WG) 162 controls exhaust flow through and bypassing the turbocharger turbine 160-1. Wastegates can also be referred to as (turbocharger) turbine bypass valves. The wastegate 162 may allow exhaust to bypass the turbocharger turbine 160-1 to reduce intake air compression provided by the turbocharger. The ECM 114 may control the turbocharger via a wastegate actuator module 164. The wastegate actuator module 164 may modulate the boost of the turbocharger by controlling an opening of the wastegate 162.

A cooler (e.g., a charge air cooler or an intercooler) may dissipate some of the heat contained in the compressed air charge, which may be generated as the air is compressed. Although shown separated for purposes of illustration, the turbocharger turbine 160-1 and the turbocharger compressor 160-2 may be mechanically linked to each other, placing intake air in close proximity to hot exhaust. The compressed air charge may absorb heat from components of the exhaust system 134.

The engine 102 may include an exhaust gas recirculation (EGR) valve 170, which selectively redirects exhaust gas back to the intake manifold 110. The EGR valve 170 may receive exhaust gas from upstream of the turbocharger turbine 160-1 in the exhaust system 134. The EGR valve 170 may be controlled by an EGR actuator module 172.

Crankshaft position may be measured using a crankshaft position sensor 180. An engine speed may be determined based on the crankshaft position measured using the crankshaft position sensor 180. A temperature of engine coolant may be measured using an engine coolant temperature (ECT) sensor 182. The ECT sensor 182 may be located within the engine 102 or at other locations where the coolant is circulated, such as a radiator (not shown).

A pressure within the intake manifold 110 may be measured using a manifold absolute pressure (MAP) sensor 184. In various implementations, engine vacuum, which is the difference between ambient air pressure and the pressure within the intake manifold 110, may be measured. A mass flow rate of air flowing into the intake manifold 110 may be measured using a mass air flow (MAF) sensor 186. In various implementations, the MAF sensor 186 may be located in a housing that also includes the throttle valve 112.

Position of the throttle valve 112 may be measured using one or more throttle position sensors (TPS) 190. A temperature of air being drawn into the engine 102 may be measured using an intake air temperature (IAT) sensor 192. One or more other sensors 193 may also be implemented. The other sensors 193 include an accelerator pedal position (APP) sensor, a brake pedal position (BPP) sensor, may include a clutch pedal position (CPP) sensor (e.g., in the case of a manual transmission), and may include one or more other types of sensors. An APP sensor measures a position of an accelerator pedal within a passenger cabin of the vehicle. A BPP sensor measures a position of a brake pedal within a passenger cabin of the vehicle. A CPP sensor measures a position of a clutch pedal within the passenger cabin of the vehicle. The other sensors 193 may also include one or more acceleration sensors that measure longitudinal (e.g., fore/aft) acceleration of the vehicle and latitudinal acceleration of the vehicle. An accelerometer is an example type of acceleration sensor, although other types of acceleration sensors may be used. The ECM 114 may use signals from the sensors to make control decisions for the engine 102.

The ECM 114 may communicate with a transmission control module 194, for example, to coordinate engine operation with gear shifts in a transmission 195. The ECM 114 may communicate with a hybrid control module 196, for example, to coordinate operation of the engine 102 and an electric motor 198. While the example of one electric motor is provided, multiple electric motors may be implemented. The electric motor 198 may be a permanent magnet electric motor or another suitable type of electric motor that outputs voltage based on back electromagnetic force (EMF) when free spinning, such as a direct current (DC) electric motor or a synchronous electric motor. In various implementations, various functions of the ECM 114, the transmission control module 194, and the hybrid control module 196 may be integrated into one or more modules.

Each system that varies an engine parameter may be referred to as an engine actuator. Each engine actuator has an associated actuator value. For example, the throttle actuator module 116 may be referred to as an engine actuator, and the throttle opening area may be referred to as the actuator value. In the example of FIG. 1 , the throttle actuator module 116 achieves the throttle opening area by adjusting an angle of the blade of the throttle valve 112.

The spark actuator module 126 may also be referred to as an engine actuator, while the corresponding actuator value may be the amount of spark advance relative to cylinder TDC. Other engine actuators may include the cylinder actuator module 120, the fuel actuator module 124, the phaser actuator module 158, the wastegate actuator module 164, and the EGR actuator module 172. For these engine actuators, the actuator values may correspond to a cylinder activation/deactivation sequence, fueling rate, intake and exhaust cam phaser angles, target wastegate opening, and EGR valve opening, respectively.

The ECM 114 may control the actuator values in order to cause the engine 102 to output torque based on a torque request. The ECM 114 may determine the torque request, for example, based on one or more driver inputs, such as an APP, a BPP, a CPP, and/or one or more other suitable driver inputs. The ECM 114 may determine the torque request, for example, using one or more functions or lookup tables that relate the driver input(s) to torque requests.

Under some circumstances, the hybrid control module 196 controls the electric motor 198 to output torque, for example, to supplement engine torque output. The hybrid control module 196 may also control the electric motor 198 to output torque for vehicle propulsion at times when the engine 102 is shut down.

The hybrid control module 196 applies electrical power from a battery 208 (FIG. 2 ) to the electric motor 198 to cause the electric motor 198 to output positive torque. The battery is discussed further below. The electric motor 198 may output torque, for example, to an input shaft of the transmission 195, to an output shaft of the transmission 195, or to another component. A clutch 200 may be implemented to couple the electric motor 198 to the transmission 195 and to decouple the electric motor 198 from the transmission 195. One or more gearing devices may be implemented between an output of the electric motor 198 and an input of the transmission 195 to provide one or more predetermined gear ratios between rotation of the electric motor 198 and rotation of the input of the transmission 195. In various implementations, the electric motor 198 may be omitted. In vehicles, such as electric vehicles and autonomous vehicles, the battery 208 can be used to supply self redundant power to various systems, such as automotive safety integrity level (ASIL) systems and advanced driver assistant systems (ADAS), as well as serve multiple output voltages (e.g., 12 and 48 volts)

The ECM 114 starts the engine 102 via a starter motor 202. The ECM 114 or another suitable module of the vehicle engages the starter motor 202 with the engine 102 for an engine startup event. For example only, the ECM 114 may engage the starter motor 202 with the engine 102 when a key ON command is received. A driver may input a key ON command, for example, via actuating one or more ignition keys, buttons, and/or switches of the vehicle or of a key fob of the vehicle. The starter motor 202 may engage a flywheel coupled to the crankshaft or one or more other suitable components that drive rotation of the crankshaft.

The ECM 114 may also start the engine in response to an auto-start command during an auto-stop/start event or to an engine start command for a sailing event. Auto-stop/start events include shutting down the engine 102 while the vehicle is stopped, the driver has depressed the brake pedal, and the driver has not input a key OFF command. An auto-start command may be generated while the engine 102 is shut down for an auto-stop/start event, for example, when a driver releases the brake pedal and/or depresses the accelerator pedal.

Sail events may include the ECM 114 shutting down the engine 102 when the vehicle is moving (e.g., vehicle speed greater than a predetermined speed, such as 50 miles per hour), the driver is not applying pressure to the accelerator pedal, and the driver has not input a key OFF command. An engine start command may be generated while the engine 102 is shut down for a sail event, for example, when a driver depresses the accelerator pedal. The driver may input a key OFF command, for example, via actuating the one or more ignition keys, buttons, and/or switches, as discussed above.

A starter motor actuator, such as a solenoid, may actuate the starter motor 202 into engagement with the engine 102. For example only, the starter motor actuator may engage a starter pinion with a flywheel coupled to the crankshaft. In various implementations, the starter pinion may be coupled to the starter motor 202 via a driveshaft and a one-way clutch. A starter actuator module 204 controls the starter motor actuator and the starter motor 202 based on signals from a starter control module, as discussed further below. In various implementations, the starter motor 202 may be maintained in engagement with the engine 102.

In response to a command to start the engine 102 (e.g., an auto-start command, an engine start command for an end of a sail event, or when a key ON command is received), the starter actuator module 204 supplies current to the starter motor 202 to start the engine 102. The starter actuator module 204 may also actuate the starter motor actuator to engage the starter motor 202 with the engine 102. The starter actuator module 204 may supply current to the starter motor 202 after engaging the starter motor 202 with the engine 102, for example, to allow for teeth meshing.

The application of current to the starter motor 202 drives rotation of the starter motor 202, and the starter motor 202 drives rotation of the crankshaft (e.g., via the flywheel). The period of the starter motor 202 driving the crankshaft to start the engine 102 may be referred to as engine cranking.

The starter motor 202 draws power from the battery 208 to start the engine 102. Once the engine 102 is running after the engine startup event, the starter motor 202 disengages or is disengaged from the engine 102, and current flow to the starter motor 202 may be discontinued. The engine 102 may be considered running, for example, when an engine speed exceeds a predetermined speed, such as a predetermined idle speed. For example only, the predetermined idle speed may be approximately 700 revolutions per minute (rpm) or another suitable speed. Engine cranking may be said to be completed when the engine 102 is running.

A generator 206 converts mechanical energy of the engine 102 into alternating current (AC) power. For example, the generator 206 may be coupled to the crankshaft (e.g., via gears or a belt) and convert mechanical energy of the engine 102 into AC power by applying a load to the crankshaft. The generator 206 rectifies the AC power into DC power and stores the DC power in the battery 208. Alternatively, a rectifier that is external to the generator 206 may be implemented to convert the AC power into DC power. The generator 206 may be, for example, an alternator. In various implementations, such as in the case of a belt alternator starter (BAS), the starter motor 202 and the generator 206 may be implemented together. In various implementations, one or more direct current (DC) to DC converters may be implemented.

FIG. 2 is a functional block diagram of an example battery system of the vehicle. The battery 208 has at least two (positive) output terminals and a negative terminal to provide at least two direct current (DC) operating voltages. For example only, the battery 208 may have a first positive (e.g., 48 Volt (V) nominal) terminal 210, a negative terminal 212, and a second positive (e.g., 12 V nominal) terminal 214. While the example of the battery 208 having a 48 V nominal operating voltage and a 12 V nominal operating voltage is provided, the battery 208 may have one or more other operating voltages.

The battery 208 includes a plurality of battery modules, such as a first battery module 224-1, . . ., and an N-th battery module 224-N (“battery modules 224”), where N is an integer greater than or equal to 2. In various implementations, N may be equal to 2, 3, 4, 5, 6, 8, 10, 12, or another suitable number.

As discussed further below with respect to FIG. 4 , each of the battery modules 224 includes multiple battery strings. Each battery string may be individually replaceable. The ability to individually replace the battery strings may enable the battery 208 to include a shorter warranty period and have a lower warranty cost. The battery strings are also individually isolatable, for example, in the event of a fault in a battery string. In various implementations, the battery 208 may have the form factor of a standard automotive grade 12 V battery.

The battery 208 includes a plurality of switches, such as first switches 232-1, ..., N-th switches 232-N (collectively “switches 232”). The switches 232 enable the battery strings of the battery modules 224 to be connected in series, parallel, or combinations of series and parallel to provide target output voltages and capacities at the output terminals.

A switch control module 240 controls the switches 232 to provide desired output voltages and capacities at the output terminals. The switch control module 240 controls the switches 232 using model predictive control (MPC)or another type of balancing control to as closely as possible balance the state of charges (SOCs) of the battery strings, as discussed further below.

FIGS. 3A-3B are a schematic including an example battery system including the battery 208. Sets of the battery strings are connectable in series (via ones of the switches 232) to the first positive terminal 210 and the negative terminal 212 to provide a first nominal output voltage (e.g., 48 V) via the first positive terminal 210. Individual ones of the battery strings can be connected (via ones of the switches 232) to the second positive terminal 214 and the negative terminal 212 to provide a second nominal output voltage (e.g., 12 V) via the second positive terminal 214. How many of the battery strings are connected to the first positive terminal 210 and the second positive terminal 214 dictates the portions of the overall capacity of the battery 208 available at each of the positive terminals.

As shown in FIG. 3B, a first set of vehicle electrical components operates using one of the two or more operating voltages of the battery 208. For example, the first set of vehicle electrical components may be connected to the second positive terminal 214. The first set of vehicle electrical components may include, for example but not limited to, the ECM 114 and other control modules of the vehicle, the starter motor 202, and/or other electrical loads, such as first 12 V loads 304, second 12 V loads 308, other control modules 312, third 12 V loads 316, and fourth 12 V loads 320. In various implementations, a switching device 324 may be implemented.

As shown in FIG. 3A, a second set of vehicle electrical components operates using another one of the two or more operating voltages of the battery 208. For example, the second set of vehicle electrical components may be connected to the first positive terminal 210. The second set of vehicle electrical components may include, for example but not limited to, the generator 206 and various electrical loads, such as 48 V loads 328. The generator 206 may be controlled to charge the battery 208.

Each of the switches 232 may be an insulated gate bipolar transistor (IGBT), a field effect transistor (FET), such as a metal oxide semiconductor FET (MOSFET), or another suitable type of switch.

FIG. 4 is a functional block diagram of an example implementation of one of the battery modules 224, numbered battery module 404, and one set of the switches 232. Each of the battery modules 224 may be identical to 404, and each set of the switches 232 may be identical.

The battery module 404 includes three battery strings, 408, 412, and 416. The battery strings 408-416 are identical and each include four battery cells 420, 424, 428, and 432. The battery cells 420-432 are connected in series to provide the second operating voltage (e.g., 12 V). Each of the battery cells 420-432 may be, for example, a 3 V battery cell or have another suitable voltage to provide the second operating voltage when the battery cells 420-432 are connected in series. The battery cells 420-432 may be, for example lithium ferrophosphate (LFP) battery cells or have another suitable chemistry.

Negative terminals of the battery strings 408-416 are connected to the negative terminal 212. The negative terminals of the battery strings 408 and 412 are connected to the negative terminal 212 via switches 436 and 440, respectively, when the switches 436 and 440 are closed. The switches 436 and 440 can open to disconnect the negative terminals of the battery strings 408 and 412 from the negative terminal 212. The negative terminal of the battery string 416 may be directly connected to the negative terminal 212.

The positive terminal of the battery string 416 is connected to the negative terminal of the battery string 412 such that the battery strings 412 and 416 are connected in series when switch 444 is closed. The switch 444 can be opened to disconnect the positive terminal of the battery string 416 from the negative terminal of the battery string 412. The positive terminal of the battery string 412 is connected to the negative terminal of the battery string 408 such that the battery strings 412 and 408 are connected in series when switch 448 is closed. The switch 448 can be opened to disconnect the positive terminal of the battery string 412 from the negative terminal of the battery string 408.

Switches 452, 456, and 460 respectively connect and disconnect the positive terminals of the battery strings 408, 412, and 416 to and from a first bus (e.g., 12 V bus) that is connected to the second positive terminal 214. Switch 464 connects and disconnects the positive terminal of the battery string 408 to and from a second bus (e.g., a 48 V bus) that is connected to the first positive terminal 210.

The switch control module 240 controls switching of the switches of each of the battery modules 224 (the set of switches). At any given time, the switch control module 240 may actuate the switches associated with a battery module such that the battery module is in an open (X) configuration, a series (S) configuration, or a parallel (P) configuration. FIG. 4 includes an example illustration of the battery module 404 in the open (X) configuration. When a battery module is in the open (X) configuration, all the battery strings of the battery module are disconnected from both the first positive terminal 210 and the second positive terminal 214.

FIG. 5 includes an example illustration of the battery module 404 in the series (S) configuration. When a battery module is in the series (S) configuration, all of the battery strings of the battery module are connected in series and to the first positive terminal 210. This is accomplished by closing switches 444, 448, and 464, and opening all of the other switches 436, 440, 452, 456, 460. None of the battery strings is connected to the second positive terminal 214 when the battery module is in the series (S) configuration.

FIG. 6 includes an example illustration of the battery module 404 in the parallel (P) configuration. When a battery module is in the parallel (P) configuration, all the battery strings of the battery module are connected in parallel to the second positive terminal 214. This is accomplished by closing switches 452, 456, 460, 436, and 440, and opening all of the other switches 444, 448, and 464. None of the battery strings is connected to the first positive terminal 210 when the battery module is in the parallel (P) configuration.

FIG. 7 is a functional block diagram of an example implementation of the switch control module 240. A switching module 704 applies signals to (e.g., gate terminals) of the switches 232 (the sets of switches) of the battery modules 224 to control actuation of the switches 232 and to control whether each of the battery modules 224 is in the open (X) state, the series (S) state, or the parallel (P) state.

The switching module 704 applies the signals based on input from a model predictive control (MPC) module 708. While the example of the MPC moduel is provided, another type of balancing control module may be used. The MPC module 708 determines a predicted power mode over a prediction horizon (e.g., the next 9 seconds or another suitable period), an actual/target present power mode, phase durations, and string and module connection and disconnection times based on one or more operating parameters and generates the output for the switching module 704. The MPC module 708 generates the output further based on constraints 712 set by a constraint module 716. Examples of the constraints 712 include, for example, a battery string cannot be connected to either the first or second positive terminal 210 and 214 when its battery module is in the X connection. A battery string cannot be connected to both the first and second positive terminals 210 and 214 at the same time. A battery string cannot be connected multiple times to the second positive terminal 214 when that battery module is to be connected in the parallel (P) mode. Phase durations may be constrained to meet the demand at the first positive terminal 210. The duration of connection of each string may be limited (constrained) to the end of the phase. The number of channels (battery strings) per battery module may be constrained to meet a demand at the second positive terminal 210. The MPC module 708 may therefore better and more quickly balance the SOCs of the battery strings and the battery modules.

One, more than one, or all of the constraints 712 may be fixed. In various implementations, one or more of the constraints 712 may be variable. The constraints module 716 may set variable constraints based on one or more operating parameters 714. Examples of the operating parameters 714 include, for example, the present power mode, the predicted power mode, a predicted duration of the present power mode, and other example operating parameters.

The MPC module 708 may set the periods of the phases, the periods of connections of the modules, and the periods of the strings based on the operating parameters 714, as stated above. If the present power mode differs from the predicted power mode, however, the MPC module 708 transitions to the present power mode and transitions to default control of the setting of the periods of the phases, the periods of the modules, and the periods of the strings. Default control involves the MPC module setting each of the phases to have the same period, each module to be connected for the same period during a phase, and each string to be connected for the same period during a phase.

A state of charge (SOC) module 718 determines a present state of charge (SOC) 720 of each of the battery strings. In other words, the SOC module 718 determines present SOCs 720 of the battery strings, respectively. The SOC module 718 may determine the present SOC of a battery string, for example, based on at least one of a voltage across the battery string and current to and from that battery string. The SOC module 718 may determine the present SOC of a battery string using at least one of an equation and a lookup table that relates voltage and/or current to SOC. In various implementations, the SOC module 718 may determine the SOC of a battery string based on impedance of the battery string, such as to more precisely relate voltage and current to SOC. The SOC module 718 does this for each battery string. Temperatures, voltages, and currents of the battery strings 724 may be measured using temperature, voltage, and current sensors, respectively.

When not operating using default control, the MPC module 708 controls switching of the switches (via the switching module 704) to minimize an error (e.g., a sum of squared errors) between the SOCs of the battery strings, respectively, for the present power mode. The MPC module 708 may control switching of the switches further based on present output demands via the first and second positive terminals 210 and 214 and predicted output demands from the first and second positive terminals 210 and 214. The present and predicted output demands are illustrated by 728.

To balance the SOCs of the strings 720 when not using default control, using MPC the MPC module 708 sets phase durations for each of three phases (phase 1, phase 2, and phase 3), a number of battery strings connected when in the P mode, and a duration that each of the battery strings is connected in the P mode. The durations of the phases may be set to different lengths based on string and/or module balancing. Each power mode has an associated set of configurations (X mode, P mode, or S mode) of the battery modules 224 for that power mode. A table illustrating power modes and the battery module modes for each phase is provided below. The MPC module 708 cycles through the phases (phase 1, phase 2, phase 3, then back to phase 1, etc.) repeatedly until the power mode is changed.

Power Mode Phase 1 Phase 2 Phase 3 Situation 1(XXX mode) XXX XXX XXX OFF 2(XXP mode) XXP PXX XPX 12 V sleep mode 3(XXS mode) XXS SXX XSX 48 V low power mode with diagnostic 4(XPP mode) XPP PXP PPX 12 V medium power mode with diagnostic 5(SXP mode) SXP PSX XPS Low power 2 voltage mode with diagnostic 6(XSS mode) XSS SXS SSX 48 V medium power with diagnostic 7(PPP mode) PPP PPP PPP 12 V high power cranking mode 8(PPS mode) PPS SPP PSP Normal 2 voltage mode 9(PSS mode) PSS SPS SSP Normal 2 voltage mode 10(SSS mode) SSS SSS SSS 48 V high power mode

In the example table above, the battery module mode of the respective battery modules are provided for each phase. For example, when in power mode 5 (SXP mode), during the first phase (phase 1), the first battery module is operated in the series (S) mode, the second battery module is operated in the open (X) mode, and the third battery module is operated in the parallel (P) mode. Only 1 of the strings of the third battery module (being operated in the P mode) can be disconnected before the end of the first phase to better balance the strings of the third battery module. During the second phase (phase 2) of power mode 5, the first battery module is operated in the parallel (P) mode, the second battery module is operated in the series (S) mode, and the third battery module is operated in the open (X) mode. Only 1 of the strings of the first battery module (being operated in the P mode) can be disconnected before the end of the second phase to better balance the strings of the first battery module. During the third phase (phase 3) of power mode 5, the first battery module is operated in the open (X) mode, the second battery module is operated in the parallel (P) mode, and the third battery module is operated in the series (S) mode. Only 1 of the strings of the second battery module (being operated in the P mode) can be disconnected before the end of the third phase to better balance the strings of the second battery module.

When not operating using default control, the MPC module 708 sets the duration (length) of each of the first, second, and third phases based on balancing of the SOCs of each battery string and each battery module. For example, in the XXP mode, the battery strings (e.g., on average) of one battery module have lower SOCs than the other two battery modules, during charging the MPC module 708 may set the phase or phases that the one battery module is operated in the parallel (P) mode to be longer than the phase or phases that the other two battery modules. This will increase the SOCs of the other two battery modules less than the SOC of the one of the battery modules such that the SOCs are more balanced across the battery modules. During discharging, the battery strings (e.g., on average) of one battery module have lower SOCs than the other two battery modules, the MPC module 708 may set the phase or phases that the one battery module is operated in the parallel (P) mode to be shorter than the phase or phases that the other two battery modules. This will decrease the SOCs of the other two battery modules more than the SOC of the one of the battery modules such that the SOCs are more balanced across the battery modules.

When not using default control, the MPC module 708 sets the duration (length/period) of each phase that each battery string is connected to the second positive terminal 214 to balance the individual SOCs of the battery strings of each module. For example, during charging, when one battery string of a battery module has a SOC that is lower than the other battery strings of that battery module, the MPC module 708 may set the duration for the one of the battery strings to be connected to the second positive terminal 214 to longer than the durations of the other battery strings of the battery module. This will increase the SOC of the one battery string of the battery module more than the SOCs of the other battery strings of the battery module such that the SOCs are more balanced within the battery module. The MPC module 708 does this for each battery module. During discharging, when one battery string of a battery module has a SOC that is lower than the other battery strings of that battery module, the MPC module 708 may set the duration for the one of the battery strings to be connected to the second positive terminal 214 to shorter than the durations of the other battery strings of the battery module. This will decrease the SOC of the one battery string of the battery module less than the SOCs of the other battery strings of the battery module such that the SOCs are more balanced within the battery module. The MPC module 708 does this for each battery module when operated in the parallel (P) mode.

As another example, during charging, when one battery string of a battery module has a SOC that is higher than the other battery strings of that battery module, the MPC module 708 may set the duration for the one of the battery strings to be connected to the second positive terminal 214 such that the one of the battery strings is disconnected prior to the end of the phase (i.e., to shorter than the phase) and the other two battery strings to the second positive terminal 214 are connected for the entirety of the phase (i.e., to the length of the phase). This will increase the SOC of the one battery string of the battery module to a lesser extent than the SOCs of the other battery strings of the battery module such that the SOCs are more balanced within the battery module. The MPC module 708 does this for each battery module. During discharging, when one battery string of a battery module has a SOC that is lower than the other battery strings of that battery module, the MPC module 708 may set the duration for the one of the battery strings such that the one of the battery strings is disconnected prior to the end of the phase (i.e., to shorter than the phase) and the other two battery strings to the second positive terminal 214 are connected for the entirety of the phase (i.e., to the length of the phase). This will decrease the SOC of the one battery string of the battery module to a lesser extent than the SOCs of the other battery strings of the battery module such that the SOCs are more balanced within the battery module. The MPC module 708 does this for each battery module when operated in the parallel (P) mode.

FIG. 8 includes an example time series when not using default control for operation in power mode 5 (SXP) when the battery 208 is charging through the second positive terminal 214 while charging or discharging through the first positive terminal 210, such as with a small current. 804 is the first phase (phase 1), 808 is the second phase (phase 2), and 812 is the third phase (phase 3). As used herein, the MNO mode may mean that the first battery module is operating in mode M, the second battery module is operating in mode N, and the third battery module is operating in mode O, where M, N, and O are each one of parallel (P), series (S), or open (X). For example, the first phase includes SXP mode where the first battery module is operated in the series (S) mode, the second battery module is operated in the open (X) mode, and the third battery module is operated in the parallel (P) mode. The second phase includes operation in the PSX mode where the first battery module is operated in the parallel (P) mode, the second battery module is operated in the series (S) mode, and the third battery module is operated in the open (X) mode. The third phase includes operation in the XPS mode where the first battery module is operated in the open (X) mode, the second battery module is operated in the parallel (P) mode, and the third battery module is operated in the series (S) mode.

In the example of FIG. 8 , while not using default control, the MPC module 708 set the duration of the second phase to longer than the duration of the third phase, and the duration of the third phase to shorter than the duration of the first phase. During charging through the second positive terminal 214 allows for more charging of the battery strings of the first battery module (which is connected in the parallel (P) mode in the second phase) than the other battery modules and allows for less charging of the battery strings of the second battery module (which is connected in the parallel (P) mode in the third phase) than the battery strings of the third battery module. The third battery module is operated in the parallel (P) mode in the first phase.

During the first phase 804, the MPC module 708 connected the third battery string 824 of the third battery module to the second positive terminal 214 for a lesser total duration than the first and second battery strings 816 and 820 of the third battery module. This allows the first and second battery strings 816 and 820 of the third battery module to be charged more than the third battery string 824 of the third battery module to balance the SOCs of the first, second, and third battery strings 816, 820, and 824 of the third battery module.

During the second phase 808, the MPC module 708 connected the first battery string 828 of the first battery module to the second positive terminal 214 for a lesser total duration than the second and third battery strings 832 and 836 of the first battery module. This allows the second and third battery strings 832 and 836 of the first battery module to be charged more than the first battery string 828 of the first battery module to balance the SOCs of the first, second, and third battery strings 828, 832, 836 of the first battery module.

During the third phase 812, the MPC module 708 connected the second battery string 844 of the second battery module to the second positive terminal 214 for a lesser total duration than the first and third battery strings 840 and 848 of the second battery module. This allows the first and third battery strings 840 and 848 of the second battery module to be charged more than the second battery string 844 of the second battery module to balance the SOCs of the first, second, and third battery strings 840, 844, 848 of the second battery module.

Control then returns to the first phase if the power mode has not changed. In other words, control continues from phase 1 to phase 2 to phase 3 before repeating phases 1-3 in the same order.

While FIG. 8 is discussed as illustrating charging, similar is applicable to the situation of discharging. For example, if the SOC of the third strings of the first, second, and third battery modules are lower than the SOCs of the first and second strings of the first-third battery modules, respectively, the MPC module 708 may connect the third strings of the first-third battery modules during the respective phases to the second positive terminal 214 for shorter total periods than the first and second strings of the first-third battery modules. This discharges the third strings less than the first and second strings and balances the SOCs of the battery strings.

FIG. 9 is a flowchart depicting an example method of balancing the SOCs of the battery strings of the battery modules of the battery 208 while not using default control (e.g., using MPC control). Control begins with 904 where the SOC module 718 determines the SOCs of the battery strings (first, second, and third) of each of the battery modules 224 (first, second, and third) of the battery 208.

At 908, the SOC module 718 may determine SOCs of the battery modules (first, second, and third) based on the battery strings of the battery modules, respectively. For example, the SOC module 718 may determine an SOC of the first battery module based on an average of the SOCs of the battery strings (first, second, and third) of the first battery module. The SOC module 718 may determine an SOC of the second battery module based on an average of the SOCs of the battery strings (first, second, and third) of the second battery module. The SOC module 718 may determine an SOC of the third battery module based on an average of the SOCs of the battery strings (first, second, and third) of the third battery module.

At 912, the MPC module 708 determines the power mode, such as described above. The MPC module 708 may select one of the power modes above, such as the SXP mode, the XPP mode, the XXP mode, or another one of the modes above.

At 916, the MPC module 708 determines the phase durations (the periods of the first, second, and third phases) based on the power mode and the SOCs of the battery modules. For example, for discharging in the XXP mode, the MPC module 708 may set the durations of a phase when a battery module is to be connected in the parallel (P) mode to shorter than the durations of the other phases when the SOC of that battery module is less than the SOC of the other battery modules. The MPC module 708 determines the phase durations using MPC, and the phase durations may be different. In other words, the phase durations are not constrained (via the constraints 712) to be the same.

At 920, the MPC module 708 determines durations for connection of each string of each battery module within the phases. As discussed above, only one string of a battery module to be operated in the P mode during a phase may be disconnected before the end of the phase. For example, during charging in the P mode 1040, the MPC module 708 may charge two battery strings longer (until the end of a phase) than other battery string (disconnect before the end of the phase) when the battery strings have lower SOCs than the other battery string. During discharging, the MPC module 708 may discharge battery strings longer than the other battery string when the battery strings have higher SOCs than the other battery string. The MPC module 708 determines the battery string durations using MPC and, via the constraints 712, can set only one of the battery strings of a battery module to be disconnected prior to the end of a phase during which that battery module is to be operated in the P mode.

In various implementations 912 and 916 may be performed concurrently by the MPC module 708. The optimization cost criterion may be zero when all string SOCs are equal and may become larger with larger differences between the SOCs. One possible formulation of such a cost criterion is a weighted sum of squared differences between the SOCs of neighboring pairs in a cyclic chain that includes all of the strings, this sum taken over a planning horizon consisting of one or more complete cycles through the three phases. Additional penalties may be added such as a cost on the total connection times of strings with the purpose of avoiding overheating any string. The variables in the optimization are the durations of the phases and the duration that each string is connected in P configuration. Minimization of the cost criterion is subject to the constraints 712. Violation of a constraint increases the cost of a possibility and thus prevents the possibility from being selected and used. Given the output demands and predictions 728, the cost criterion can be evaluated by the MPC module 708 for any set of connection durations. The solution of the minimization problem is the set of phase durations and string connection durations that most nearly balance the string SOCs over the planning horizon, subject to the constraints 712 and taking into account any additional penalty terms.

At 924, the switching module 704 actuates the switches 232 according to the power mode, the phase durations, and the battery string durations. Control returns to 904 for a next loop.

FIG. 10 includes an example graph of present power mode 1004, predicted power mode 1008, and default control mode 1012 over the prediction horizon (period) 1016. The prediction horizon 1016 may be approximately 9 seconds or another suitable length. The MPC module 708 determines the predicted power mode over the prediction horizon based on one or more operating parameters, such as predicted output demands via the positive terminals. The MPC module 708 may determine the predicted power mode using one or more equations and/or lookup tables that relate predicted output demands to predicted power modes. While the example of eleven power modes is illustrated in FIG. 10 , a greater or lesser number of power modes may be used.

The MPC module 708 may set the present power mode based on present power demands from the positive terminals. For example, the MPC module 708 may set the present power mode to the tenth power mode (SSS) when power is demanded (or to be input) via the positive terminal 210 and no power is demanded (or to be input) via the positive terminal 214. As another example, the MPC module 708 may set the present power mode to the seventh power mode (PPP) when no power is demanded (or to be input) via the positive terminal 210 and power is demanded (or to be input) via the positive terminal 214.

The MPC module 708 may set the predicted power mode to be the same for the entire prediction horizon. The MPC module 708 may update the predicted power mode for each consecutive prediction horizon. This may be done, for example, to decrease computational resources. If the MPC module 708 transitions the present power mode to a mode that is different than the predicted power mode for the prediction horizon, the MPC module 708 may transition to default control during operation in the present power mode that is different than the predicted power mode for the prediction horizon.

For example, the left set of three graphs of FIG. 10 illustrate that the predicted power mode 1008 was the third mode 1020 for the prediction horizon. The present power mode 1004 was the same as the predicted power mode during periods 1024 and 1028 of the prediction horizon. However, the present power mode 1004 was different than the predicted power mode during period 1032 during the prediction horizon. In the example of FIG. 10 , based on the operating parameters, the present power mode transitioned to the tenth mode 1036 then to the ninth mode 1040 during the period 1032 during the prediction horizon.

Because the present power mode transitioned to power modes where MPC control is not available, the MPC module 708 set the periods using default control (same phase durations, same module durations, and same string durations) during operation in the tenth and ninth power modes. Power modes where MPC control is not available are shaded in 1008 in the example of FIG. 10 . MPC control (with possibly different phase periods, module connection periods, and/or string connection periods) is performed during 1024 and 1028. Default control is used during 1036 and 1040.

The number of power modes where MPC control is available during each prediction horizon may be predetermined and set based on computational resources allotted to the switch control module 240. The computational resources allotted to the switch control module 240 may be fixed or variable. The left set of three graphs of FIG. 10 illustrate where only 1 power mode is available for using MPC control during each prediction horizon given the allotted computational resources. The right set of three graphs of FIG. 10 illustrate the example where 7 power modes are available for MPC control. The predicted power mode may be one of the available power modes for MPC control. The MPC module 708 may set the one or more other available power modes for MPC control, for example, to the one or more most frequently used power modes during the last predetermined period (e.g., 1 day, 1 week, 1 month, etc.).

On the right three graphs of the example of FIG. 10 , power modes 3-9 are available for use of MPC control. The predicted power mode 1008 was the third mode 1020 for the prediction horizon. The present power mode 1004 was the same as the predicted power mode during periods 1024 and 1028 of the prediction horizon. However, the present power mode 1004 was different than the predicted power mode during period 1032 during the prediction horizon. Based on the operating parameters, the present power mode transitioned to the tenth mode 1036 then to the ninth mode 1040 during the period 1032 during the prediction horizon.

On the right of FIG. 10 , however, use of MPC control was available during operation in the ninth mode 1040. Default control was therefore used during operation in the tenth mode, and MPC control was used during operation in the third mode during periods 1024 and 1028 and in the ninth mode 1040.

FIG. 11 includes an example graph of modes and phases over the prediction horizon. In the example of FIG. 11 , MPC control is available during operation in only mode 2, which is illustrated by row 1104, and default control is used for operation in mode 1, mode 3, and mode 4, which are illustrated by rows 1108, 1112, and 1116, respectively. The first, second, and third phases used by the MPC module 708 are illustrated by 1120, 1124, and 1128, respectively.

Mode 2 and MPC control is used initially. However, during the first phase, the mode transitions from mode 2 to mode 3. The MPC module 708 uses default control during operation in mode 3. The mode also transitions to mode 4 during the first phase 1120. The MPC module 708 uses default control during operation in mode 4.

The mode transitions to mode 2 from mode 4 during the second phase 1124. The MPC module 708 therefore transitions to MPC control. The mode remains in mode 2 and MPC control continues until the mode transitions to mode 1 from mode 2 after the third phase 1128 begins. After transition from mode 2, the MPC module 708 begins mode 1 with the third phase of default control with and holds until time 1132. After time 1132, the MPC module 708 continues mode 1 with default control until the end of the third phase 1128.

The foregoing description is merely illustrative in nature and is in no way intended to limit the disclosure, its application, or uses. The broad teachings of the disclosure can be implemented in a variety of forms. Therefore, while this disclosure includes particular examples, the true scope of the disclosure should not be so limited since other modifications will become apparent upon a study of the drawings, the specification, and the following claims. It should be understood that one or more steps within a method may be executed in different order (or concurrently) without altering the principles of the present disclosure. Further, although each of the embodiments is described above as having certain features, any one or more of those features described with respect to any embodiment of the disclosure can be implemented in and/or combined with features of any of the other embodiments, even if that combination is not explicitly described. In other words, the described embodiments are not mutually exclusive, and permutations of one or more embodiments with one another remain within the scope of this disclosure.

Spatial and functional relationships between elements (for example, between modules, circuit elements, semiconductor layers, etc.) are described using various terms, including “connected,” “engaged,” “coupled,” “adjacent,” “next to,” “on top of,” “above,” “below,” and “disposed.” Unless explicitly described as being “direct,” when a relationship between first and second elements is described in the above disclosure, that relationship can be a direct relationship where no other intervening elements are present between the first and second elements, but can also be an indirect relationship where one or more intervening elements are present (either spatially or functionally) between the first and second elements. As used herein, the phrase at least one of A, B, and C should be construed to mean a logical (A OR B OR C), using a non-exclusive logical OR, and should not be construed to mean “at least one of A, at least one of B, and at least one of C.”

In the figures, the direction of an arrow, as indicated by the arrowhead, generally demonstrates the flow of information (such as data or instructions) that is of interest to the illustration. For example, when element A and element B exchange a variety of information but information transmitted from element A to element B is relevant to the illustration, the arrow may point from element A to element B. This unidirectional arrow does not imply that no other information is transmitted from element B to element A. Further, for information sent from element A to element B, element B may send requests for, or receipt acknowledgements of, the information to element A.

In this application, including the definitions below, the term “module” or the term “controller” may be replaced with the term “circuit.” The term “module” may refer to, be part of, or include: an Application Specific Integrated Circuit (ASIC); a digital, analog, or mixed analog/digital discrete circuit; a digital, analog, or mixed analog/digital integrated circuit; a combinational logic circuit; a field programmable gate array (FPGA); a processor circuit (shared, dedicated, or group) that executes code; a memory circuit (shared, dedicated, or group) that stores code executed by the processor circuit; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system-on-chip.

The module may include one or more interface circuits. In some examples, the interface circuits may include wired or wireless interfaces that are connected to a local area network (LAN), the Internet, a wide area network (WAN), or combinations thereof. The functionality of any given module of the present disclosure may be distributed among multiple modules that are connected via interface circuits. For example, multiple modules may allow load balancing. In a further example, a server (also known as remote, or cloud) module may accomplish some functionality on behalf of a client module.

The term code, as used above, may include software, firmware, and/or microcode, and may refer to programs, routines, functions, classes, data structures, and/or objects. The term shared processor circuit encompasses a single processor circuit that executes some or all code from multiple modules. The term group processor circuit encompasses a processor circuit that, in combination with additional processor circuits, executes some or all code from one or more modules. References to multiple processor circuits encompass multiple processor circuits on discrete dies, multiple processor circuits on a single die, multiple cores of a single processor circuit, multiple threads of a single processor circuit, or a combination of the above. The term shared memory circuit encompasses a single memory circuit that stores some or all code from multiple modules. The term group memory circuit encompasses a memory circuit that, in combination with additional memories, stores some or all code from one or more modules.

The term memory circuit is a subset of the term computer-readable medium. The term computer-readable medium, as used herein, does not encompass transitory electrical or electromagnetic signals propagating through a medium (such as on a carrier wave); the term computer-readable medium may therefore be considered tangible and non-transitory. Non-limiting examples of a non-transitory, tangible computer-readable medium are nonvolatile memory circuits (such as a flash memory circuit, an erasable programmable read-only memory circuit, or a mask read-only memory circuit), volatile memory circuits (such as a static random access memory circuit or a dynamic random access memory circuit), magnetic storage media (such as an analog or digital magnetic tape or a hard disk drive), and optical storage media (such as a CD, a DVD, or a Blu-ray Disc).

The apparatuses and methods described in this application may be partially or fully implemented by a special purpose computer created by configuring a general purpose computer to execute one or more particular functions embodied in computer programs. The functional blocks, flowchart components, and other elements described above serve as software specifications, which can be translated into the computer programs by the routine work of a skilled technician or programmer.

The computer programs include processor-executable instructions that are stored on at least one non-transitory, tangible computer-readable medium. The computer programs may also include or rely on stored data. The computer programs may encompass a basic input/output system (BIOS) that interacts with hardware of the special purpose computer, device drivers that interact with particular devices of the special purpose computer, one or more operating systems, user applications, background services, background applications, etc.

The computer programs may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language), XML (extensible markup language), or JSON (JavaScript Object Notation) (ii) assembly code, (iii) object code generated from source code by a compiler, (iv) source code for execution by an interpreter, (v) source code for compilation and execution by a just-in-time compiler, etc. As examples only, source code may be written using syntax from languages including C, C++, C#, Objective-C, Swift, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, Javascript®, HTML5 (Hypertext Markup Language 5th revision), Ada, ASP (Active Server Pages), PHP (PHP: Hypertext Preprocessor), Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, Visual Basic®, Lua, MATLAB, SIMULINK, and Python®. 

What is claimed is:
 1. A battery system comprising: a first positive terminal, a second positive terminal, and a negative terminal; switches; at least two battery modules, wherein each of the at least two battery modules includes at least three strings of battery cells that are configured to, at different times be: connected in series and to the first positive terminal via first ones of the switches; connected in parallel and to the second positive terminal via second ones of the switches; and disconnected from both of the first and second positive terminals; and a switch control module configured to: during operation in a first power mode: determine, using model predictive control based on SOCs of the strings, periods of phases, respectively; and determine, using model predictive control based on the SOCs, periods for the strings, respectively, to be connected to the second positive terminal and the negative terminal during the phases; during operation in a second power mode: set the periods of the phases, respectively, to be equal in length; and set the periods for the strings, respectively, to be equal in length; and selectively actuate the switches based on the periods of the phases and the periods for the strings of battery cells.
 2. The battery system of claim 1 wherein the switch control module is configured to, during operation in the first power mode, using model predictive control, set a first period of a first one of the phases to one of (a) greater than and (b) less than a second period of a second one of the phases.
 3. The battery system of claim 2 wherein the switch control module is configured to, during operation in the first power mode, using model predictive control, set a third period of a third one of the phases to: one of (a) greater than and (b) less than the second period of the second one of the phases; and one of (a) greater than and (b) less than the first period of the first one of the phases.
 4. The battery system of claim 1 wherein the switch control module is configured to, during operation in the first power mode, using model predictive control, set first, second, and third periods of first, second, and third ones of the phases to values that are different from each other.
 5. The battery system of claim 1 wherein the switch control module is configured to, during operation in the first power mode, determine the periods of the phases and the periods for the strings based on minimizing an error between the SOCs of the strings of battery cells.
 6. The battery system of claim 5 wherein the error is a squared error between the SOCs of the strings of battery cells.
 7. The battery system of claim 1 wherein the switch control module is configured to set the power mode to one of the first power mode and the second power mode based on at least one of (a) a first power demand via the first positive terminal and (b) a second power demand via the second positive terminal.
 8. The battery system of claim 1 wherein the switch control module is configured to operate in the second power mode when use of model predictive control is not available.
 9. The battery system of claim 8 wherein the switch control module is configured to determine whether use of model predictive control is available based on an amount of computational resources available.
 10. The battery system of claim 9 wherein a number of power modes where model predictive control is available increases as the amount of computational resources available increases.
 11. The battery system of claim 1 wherein the switch control module is configured to cycle through the phases in a predetermined order.
 12. The battery system of claim 1 wherein each of the strings of battery cells includes multiple battery cells connected in series.
 13. The battery system of claim 12 wherein the multiple battery cells include four three volt battery cells.
 14. The battery system of claim 1 wherein the switch control module is configured to control the switches such that one of the strings of battery cells is not at the same time connected to both the first positive terminal and the second positive terminal.
 15. The battery system of claim 1 wherein: the first positive terminal is configured to output a first reference potential; the second positive terminal is configured to output a second reference potential; and the first reference potential is greater than the second reference potential.
 16. A method comprising: at different times, selectively connecting strings of battery cells of at least two battery modules: in series and to a first positive terminal via first ones of switches; in parallel and to a second positive terminal via second ones of the switches; and disconnected from both of the first and second positive terminals, wherein each of the at least two battery modules includes three strings of battery cells; during operation in a first power mode: determining, using model predictive control based on SOCs of the strings, periods of phases, respectively; and determining, using model predictive control based on the SOCs, periods for the strings, respectively, to be connected to the second positive terminal and a negative terminal during the phases; during operation in a second power mode: setting the periods of the phases, respectively, to be equal in length; and setting the periods for the strings, respectively, to be equal in length; and selectively actuating the switches based on the periods of the phases and the periods for the strings of battery cells.
 17. The method of claim 16 wherein the determining the periods of the phases and the periods for the strings includes, during operation in the first power mode, using model predictive control, setting a first period of a first one of the phases to one of (a) greater than and (b) less than a second period of a second one of the phases.
 18. The method of claim 17 wherein the determining the periods of the phases and the periods for the strings includes, during operation in the first power mode, during model predictive control, setting a third period of a third one of the phases to: one of (a) greater than and (b) less than the second period of the second one of the phases; and one of (a) greater than and (b) less than the first period of the first one of the phases.
 19. The method of claim 16 wherein the determining the periods of the phases and the periods for the strings includes, during operation in the first power mode, using model predictive control, setting first, second, and third periods of first, second, and third ones of the phases to values that are different from each other.
 20. The method of claim 16 wherein the determining the periods of the phases and the periods for the strings includes, during operation in the first power mode, using model predictive control, determining the periods of the phases and the periods for the strings based on minimizing an error between the SOCs of the strings of battery cells. 